//导入Jwt
const jwt = require('jsonwebtoken');

//导入配置文件
const {secrect} = require('../config/config');

//声明checktoken中间件
module.exports = function (req, res, next) {
    //获取请求头中的token
    let token = req.get('token');
    //判断token是否存在
    if (!token) {
        return res.json({
            code: 2003,
            msg: '没有token,请重新登录',
            data: null
        });
    }
    //验证token
    jwt.verify(token, secrect, function (err, data) {
        //判断token是否有效
        if (err) {
            return res.json({
                code: 2004,
                msg: 'token难证失败,请重新登录',
                data: null
            });
        }
        //将用户信息挂载到req对象上
        req.user = data;
        //继续执行后续的代码
        next();
    });
}
